Most currently available software packages include dedicated help capabilities that provide users of the program with on-screen information on demand relating to the operation of the program. These dedicated help facilities are inseparably associated with a specific software package. These dedicated or "canned" help facilities are not tailored or customized to meet the needs of a specific customer or user of the software package, but rather, contain generic information about the operation of the software in an effort to assist the user with areas of anticipated difficulty or commonly asked questions.
Some known on-line help facilities allow the user to customize the information content of the information displayed. But because these on-line help facilities are built into an associated software package, they only provide assistance in a single "context." That is, these on-line help facilities are limited because they do not cross application boundaries. Of course, specific help may be provided within the application, such as the widget specific help in DECwindows, which is currently sold by the assignee of the present invention, Digital Equipment Corporation. However, no known system permits users to obtain help information in both an active or chosen context and in other non-active contexts that are not necessarily related to the application being run by the user when help is requested. Whether the user is aware or unaware of the existence of other contexts when help is requested, known help systems do not automatically provide the user with other context browsing.
Another shortcoming of presently available help facilities has manifested itself with the growing popularity of electronic mail CE-mail"). Members of a group working with E-mail often face the problem of accessing appropriate information pertaining to a wide variety of tasks. In known "E-mail" applications such as the VAX/VMS.TM. mail program sold by Digital Equipment Corporation, it is possible to seek external help by invoking an external application. However, at the time of invoking the external application, the user temporarily has to escape into a new context, thus suspending the original application (VMS Mail.TM.). Thus, the user cannot seek external help while staying in the current application context at all times.
Various forms of help facilities are also provided by known application-independent keyboard macros, file name and key word completion mechanisms, and an application called "SuperBoomerang" specifically written for the Macintosh.TM. computer.
Keyboard macros free the user from the burden of having to remember appropriate information, as well as reduce the amount of typing, by compressing user input. However, keyboard macros are either not context sensitive or not application independent. EMACS (a text editor) has context sensitive keyboard macros, but they are embedded in the single application. Several PC applications provide keyboard macros across applications, but they are not sensitive to the application to which they are sending the expanded keystrokes. Completion systems such as those in TOPS-20 and EMACS operate in a manner similar, and have precisely the same limitations.
"SuperBoomerang" is an application that runs as a standalone module. It is never directly used by the end-user, and in a sense it performs as an "application's application". "SuperBoomerang" provides automatic assistance when the user selects the "Open" command of any end-user application, by presenting a list of application-relevant files for the user's selection. Thus, the end-user is freed from the burden of having to remember and input the relevant file name(s). However, "SuperBoomerang" is not context sensitive and does not provide any capabilities similar to other context browsing.
A help facility that operates independently with respect to application programs running on a host computer system is desirable. Similarly desirable is a help facility that provides context sensitive help information which is customized to individual customer or user needs and that provides other context browsing without the user having to choose or even know about the existence of other contexts.